Vipps
Vipps is a Norwegian mobile payment application designed for smartphones developed by DNB. Vipps was released May 30, 2015 and, having reached 1 million users by November 5, 2015, Vipps became Norway's largest payment application. Although Vipps was developed by DNB, customers of any Norwegian bank can use it. |
Vipps Specific Notes
As a merchant, you're allowed to process regular payments without having a Norwegian entity.
- A orderId must be unique for the MSN (Merchant Serial Number, the id of the sale unit). The orderId is case sensitive. The orderId does not need to be globally unique, so several MSNs may use the same orderId, as long as it is unique for each sale unit.
- While the minimum length for orderId technically is just one character, we strongly recommend to use orderId format that makes it easy to search for them in logs. This means that acme-shop-123-order123abc is a better format than 123456.
- If you ever have a problem that requires us to search in our logs, we need orderIds that are "unique enough" to actually find them. An orderId that is just a number may not be possible to find, and then we are not able to help.
- A good starting point is to use UUID, universally unique identifiers, on the format 123e4567-e89b-12d3-a456-426614174000. UUIDs are not always the most human-friendly, so see the other tips too.
- The maximum length of an orderId is 50 alphanumeric characters: a-z, A-Z, 0-9 and - (hyphen). Leading zeros should be avoided, as some applications (like Excel) tend to remove them, and this may cause misunderstandings.
- If you have multiple sale units, prefixing the orderId with the MSN for each sale unit is recommended: If the MSN is 654321, the orderIds could be 654321-acme-shop-123-order123abc.
- It is recommended to submit customer_info[cardholder_name] (Select Vipps acquirer in dropdown) as Vipps in some cases can provide non authorized credit card and that will require performing additional 3DSecure which requires Cardholder Name.
- If you need to make multiple attempts at paying the same order, you can add a suffix to the orderId to make it unique: If your internal orderId is acme-shop-123-order123abc you can add -1 to get a unique Vipps orderId acme-shop-123-order123abc-1 for the first attempt, acme-shop-123-order123abc-2 for the second, etc. This is useful when a customer:
- Adds a product to the cart
- Goes to the payment page and selects Vipps
- Gets the payment request in Vipps but cancels (or does nothing)
- Adds another product to the same cart (or order)
- Repeats steps 2 and 3.
To find out how to integrate with Vipps using our merchant API, see Integrating using the Merchant API and more specifically, the createPaymentRequest method.
Vipps Subscriptions Specific Notes
This integration is only available for Norwegian entities.
Agreements
An agreement is used to provide subscription service to sell to customers.
- Agreements can be set by sending a createPaymentRequest request. For more information about setup agreements please visit Setup Agreement page.
- Only recurring agreements are supported.
- Vipps has a 100 characters limitation for the the agreement description. Hence, the value from the subscription model order line will be trimmed if necessary.
- When setup an agreement, the customer should accept the agreement in the Vipps app.
- Not all parameters are required, but the user will see in the Agreement screen the amount, product name specified in orderLines[][itemId] and description specified in orderLines[][description]. It's recommended to use them to ensure a good user experience.
- When setup the agreement, Vipps requires a link to a page where the customer can manage the agreement. This link should be specified in agreement[admin_url].
Charges
- Agreements can be charges by sending a chargeSubscription or reserveSubscriptionCharge request. For more information about charging agreements please visit Charge Agreement page.
- The charge description is computed by joining all the order lines' descriptions. Vipps has a 100 character limitation for this field. Hence, the computed value will be trimmed to 100 characters if necessary.
- Charge payments are collected automatically by Vipps within 2 days after merchant scheduled it with a charge request, so there is no need for the customer to swipe.
- Capture & Reservation is handled by Vipps.
- Vipps will retry the charge for the number of days specified in agreement[retry_days] request parameter. The maximum number of retryDays is 14.
- When charges are shown to users in Vipps, they will have a description that can be specified in the orderLines[][description] parameter sent in request. Please see Charge Agreement page.
Refunds
- Charge Agreement payments can be refund by sending a refundCapturedReservation request.
- Charged agreement amount can be refunded full or partially as long as the refund amount is less or equal to already refunded amount.
- Refunds are allowed up to 365 days after the capture date.
- The merchant has to provide order lines to the refund request to have a better customer experience. Nevertheless, the initial order lines will be used in case of not providing others for full refunds.
- The merchant must provide at least one order line in case of partial refunds.
Releases
- Agreements can be release by sending a releaseReservation request.
- Charges not captured yet can be release by sending a releaseReservation request.